package com.xxx.player.player;

import android.content.Context;
import android.os.Message;

import com.xxx.player.cache.ICacheManager;
import com.xxx.player.model.VideoOptionModel;

import java.util.List;

import tv.danmaku.ijk.media.player.IMediaPlayer;


/**
 *
 */

public interface IPlayerManager {

    IMediaPlayer getMediaPlayer();

    /**
     */
    void initVideoPlayer(Context context, Message message, List<VideoOptionModel> optionModelList, ICacheManager cacheManager);

    /**
     */
    void showDisplay(Message msg);

    /**
     */
    void setNeedMute(boolean needMute);

    /**
     */
    void setVolume(float left, float right);

    /**
     */
    void releaseSurface();

    /**
     */
    void release();

    /**
     */
    int getBufferedPercentage();

    /**
     */
    long getNetSpeed();

    /**
     */
    void setSpeedPlaying(float speed, boolean soundTouch);

    /**
     */
    boolean isSurfaceSupportLockCanvas();

    void setSpeed(float speed, boolean soundTouch);

    void start();

    void stop();

    void pause();

    int getVideoWidth();

    int getVideoHeight();

    boolean isPlaying();

    void seekTo(long time);

    long getCurrentPosition();

    long getDuration();

    int getVideoSarNum();

    int getVideoSarDen();
}
